Calcular índices de concavidad y perfiles longitudinales de cursos fluviales
Imprimir lista de mapas ráster y vectoriales dentro en la región/localización activa
execGRASS(
'g.list',
flags = 't',
parameters = list(
type = c('raster', 'vector')
)
)
## raster/LfpNetwork-flds-Oz
## raster/LfpNetwork-outlet-Oz
## raster/MASK
## raster/accum-de-rwshed
## raster/aspect
## raster/basins
## raster/dem
## raster/drainage-dir-de-rstr
## raster/drainage-dir-de-rwshed
## raster/half-basins
## raster/order-hack-gravelius
## raster/order-horton
## raster/order-shreve
## raster/order-strahler
## raster/order-topology
## raster/ozama-basin
## raster/ozama-stream-de-rstr
## raster/pcurv
## raster/r-stream-basins-1
## raster/r-stream-basins-2
## raster/r-stream-basins-3
## raster/r-stream-basins-4
## raster/r-stream-basins-5
## raster/r-stream-basins-6
## raster/r-stream-basins-7
## raster/slope
## raster/stream-de-rwshed
## raster/tcurv
## vector/LfpNetwork_lfp_all_final_ozm
## vector/LfpNetwork_lfp_all_final_ozm1
## vector/LfpNetwork_lfp_all_final_ozm3
## vector/LfpNetwork_lfp_all_final_ozm5
## vector/LfpNetwork_lfp_ozm
## vector/LfpNetwork_lfp_ozm1
## vector/LfpNetwork_lfp_ozm3
## vector/LfpNetwork_lfp_ozm5
## vector/LfpNetwork_outlet_Oz
## vector/LfpNetwork_tributaries_ozm
## vector/LfpNetwork_tributaries_ozm1
## vector/LfpNetwork_tributaries_ozm3
## vector/LfpNetwork_tributaries_ozm5
## vector/LfpNetwork_tributaries_preconf_ozm
## vector/LfpNetwork_tributaries_preconf_ozm1
## vector/LfpNetwork_tributaries_preconf_ozm3
## vector/LfpNetwork_tributaries_preconf_ozm5
## vector/c_ozama
## vector/dem_extent
## vector/order_all
## vector/ozama_basin
## vector/ozama_stream_de_rstr
## vector/r_stream_basins_1
## vector/r_stream_basins_2
## vector/r_stream_basins_3
## vector/r_stream_basins_4
## vector/r_stream_basins_5
## vector/r_stream_basins_6
## vector/r_stream_basins_7
Obtener coordenada
mapview(order, col.regions = 'blue', legend = FALSE)
Obtener cursos más largos (cargar función propia)
devtools::source_url('https://raw.githubusercontent.com/geofis/rgrass/master/lfp_network.R') #Cargada como función "LfpNetwork"
LfpNetwork(
xycoords = my_trans(c(-69.84448,18.55179)),
suffix = 'ozm5',
stream_vect = 'order_all',
direction = 'drainage-dir-de-rstr'
)
Imprimir lista de mapas ráster y vectoriales
execGRASS(
'g.list',
flags = 't',
parameters = list(
type = c('raster', 'vector')
)
)
## raster/LfpNetwork-flds-Oz
## raster/LfpNetwork-outlet-Oz
## raster/MASK
## raster/accum-de-rwshed
## raster/aspect
## raster/basins
## raster/dem
## raster/drainage-dir-de-rstr
## raster/drainage-dir-de-rwshed
## raster/half-basins
## raster/order-hack-gravelius
## raster/order-horton
## raster/order-shreve
## raster/order-strahler
## raster/order-topology
## raster/ozama-basin
## raster/ozama-stream-de-rstr
## raster/pcurv
## raster/r-stream-basins-1
## raster/r-stream-basins-2
## raster/r-stream-basins-3
## raster/r-stream-basins-4
## raster/r-stream-basins-5
## raster/r-stream-basins-6
## raster/r-stream-basins-7
## raster/slope
## raster/stream-de-rwshed
## raster/tcurv
## vector/LfpNetwork_lfp_all_final_ozm
## vector/LfpNetwork_lfp_all_final_ozm1
## vector/LfpNetwork_lfp_all_final_ozm3
## vector/LfpNetwork_lfp_all_final_ozm5
## vector/LfpNetwork_lfp_ozm
## vector/LfpNetwork_lfp_ozm1
## vector/LfpNetwork_lfp_ozm3
## vector/LfpNetwork_lfp_ozm5
## vector/LfpNetwork_outlet_Oz
## vector/LfpNetwork_tributaries_ozm
## vector/LfpNetwork_tributaries_ozm1
## vector/LfpNetwork_tributaries_ozm3
## vector/LfpNetwork_tributaries_ozm5
## vector/LfpNetwork_tributaries_preconf_ozm
## vector/LfpNetwork_tributaries_preconf_ozm1
## vector/LfpNetwork_tributaries_preconf_ozm3
## vector/LfpNetwork_tributaries_preconf_ozm5
## vector/c_ozama
## vector/dem_extent
## vector/order_all
## vector/ozama_basin
## vector/ozama_stream_de_rstr
## vector/r_stream_basins_1
## vector/r_stream_basins_2
## vector/r_stream_basins_3
## vector/r_stream_basins_4
## vector/r_stream_basins_5
## vector/r_stream_basins_6
## vector/r_stream_basins_7
Representar con leaflet
lfp <- readVECT('LfpNetwork_lfp_all_final_ozm5')
lfp4326 <- spTransform(lfp, CRSobj = CRS("+init=epsg:4326"))
lfp_con_id <- leaflet() %>%
addProviderTiles(providers$Stamen.Terrain, group = 'terrain') %>%
addPolylines(
data = lfp4326, weight = 3, opacity = 0.7, group = 'order',
label = ~as.character(cat),
highlightOptions = highlightOptions(color = "white",
weight = 5, bringToFront = F, opacity = 1),
labelOptions = labelOptions(noHide = T,
style = list(
"font-size" = "8px",
"background" = "rgba(255, 255, 255, 0.5)",
"background-clip" = "padding-box",
"padding" = "1px"))) %>%
leafem::addHomeButton(extent(lfp4326), 'Ver todo')
lfp_con_id
lfp_con_id %>% mapview::mapshot(file = 'lfp_con_id_salida5.png')
Exportar a KML
execGRASS(
'v.out.ogr',
flags = c('overwrite','quiet'),
parameters = list(
input = 'LfpNetwork_lfp_all_final_ozm5',
output = 'lfp_ozm_kml.kml',
format = 'KML',
dsco = 'NameField=cat'
)
)
Obtención de perfiles longitudinales e índices de concavidad
source('lfp_profiles_concavity.R') #Cargado como función "LfpProfilesConcavity"
ozama_conv_prof <- LfpProfilesConcavity(
xycoords = my_trans(c(-69.84448,18.55179)),
network = 'LfpNetwork_lfp_all_final_ozm5',
prefix = 'Oz',
dem = 'dem',
direction = 'drainage-dir-de-rstr',
crs = '+init=epsg:32619',
smns = 0.5,
nrow = 5)
Mostrar resultados
ozama_conv_prof$profiles

ozama_conv_prof$concavityindex
## stream ci
## 1 Oz-1 0.80271508
## 2 Oz-2 0.80389217
## 3 Oz-3 0.03579061
## 4 Oz-4 0.23462741
## 5 Oz-5 0.64511144
## 6 Oz-6 0.45440916
## 7 Oz-7 -0.01108762
## 8 Oz-8 0.38328937
## 9 Oz-9 0.24105441
## 10 Oz-10 0.09667463
## 11 Oz-11 0.23745060
## 12 Oz-12 0.25079404
## 13 Oz-13 0.38525122
## 14 Oz-14 0.38984452
## 15 Oz-15 0.42363156
## 16 Oz-16 0.25875572
## 17 Oz-17 0.49351328
## 18 Oz-18 0.33078898
## 19 Oz-19 0.32525752
## 20 Oz-20 0.17293190
## 21 Oz-21 0.28778613
## 22 Oz-22 0.72596970
ozama_conv_prof$dimensionlessprofiles$layers[[2]]$aes_params$size <- 2
ozama_conv_prof$dimensionlessprofiles$theme$text$size <- 12
ozama_conv_prof$dimensionlessprofiles

Tabla dx/dy, tanto en metros como adimensional. Útiles para construir perfiles por cuenta propia
ozama_conv_prof$lengthzdata %>% tibble::as.tibble()
## Warning: `as.tibble()` is deprecated, use `as_tibble()` (but mind the new semantics).
## This warning is displayed once per session.
## # A tibble: 1,907 x 4
## stream length z rowname
## <fct> <dbl> <dbl> <int>
## 1 Oz-1 0 5.67 1
## 2 Oz-1 89.1 5.53 2
## 3 Oz-1 178. 5.39 3
## 4 Oz-1 215. 5.33 4
## 5 Oz-1 304. 5.18 5
## 6 Oz-1 341. 5.12 6
## 7 Oz-1 430. 4.96 7
## 8 Oz-1 467. 4.89 8
## 9 Oz-1 556. 4.73 9
## 10 Oz-1 593. 4.67 10
## # … with 1,897 more rows
ozama_conv_prof$lengthzdatadmnls %>% tibble::as.tibble()
## # A tibble: 1,907 x 6
## stream length z rowname length.dmnls z.dmnls
## <fct> <dbl> <dbl> <int> <dbl> <dbl>
## 1 Oz-1 0 5.67 1 0 0.00777
## 2 Oz-1 89.1 5.53 2 0.00351 0.00730
## 3 Oz-1 178. 5.39 3 0.00702 0.00683
## 4 Oz-1 215. 5.33 4 0.00847 0.00663
## 5 Oz-1 304. 5.18 5 0.0120 0.00613
## 6 Oz-1 341. 5.12 6 0.0134 0.00592
## 7 Oz-1 430. 4.96 7 0.0169 0.00537
## 8 Oz-1 467. 4.89 8 0.0184 0.00514
## 9 Oz-1 556. 4.73 9 0.0219 0.00459
## 10 Oz-1 593. 4.67 10 0.0234 0.00439
## # … with 1,897 more rows
Limpiar archivo de bloqueo del conjunto de mapas de GRASS
unlink_.gislock()